namespace StarForce.Hotfix
{
    /// <summary>
    /// 游戏抽象类
    /// </summary>
    public abstract class GameBase
    {
        
        /// <summary>
        /// 游戏模式
        /// </summary>
        public abstract GameMode GameMode
        {
            get;
        }

        /// <summary>
        /// 游戏是否结束
        /// </summary>
        public bool GameOver
        {
            get;
            set;
        }

        /// <summary>
        /// 游戏初始化
        /// </summary>
        public virtual void Initialize()
        {
            
        }

        /// <summary>
        /// 游戏结束
        /// </summary>
        public virtual void Shutdown()
        {
            
        }  

        /// <summary>
        /// 游戏轮询
        /// </summary>
        /// <param name="elapseSeconds"></param>
        /// <param name="realElapseSeconds"></param>
        public virtual void Update(float elapseSeconds, float realElapseSeconds)
        {
            
        }
    }
}